package com.piggy.logi.sys.domain;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import com.baomidou.mybatisplus.annotation.*;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;



/**
 * 调度线路分段费用对象 logi_schedule_fee
 *
 * @author piggy
 * @date 2023-09-13
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("logi_schedule_fee")
public class LogiScheduleFee implements Serializable {

    private static final long serialVersionUID=1L;

    /** 调度费用配置id */
    @ApiModelProperty("调度费用配置id")
    @TableId(value = "id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long id;

    /** 调度车次ID */
    @ApiModelProperty("调度车次ID")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long scheduleId;

    /** 线路id */
    @ApiModelProperty("线路id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long lineId;

    /** 计费方式 */
    @ApiModelProperty("计费方式")
    private String feeMode;

    /** 结算方式 */
    @ApiModelProperty("结算方式")
    private String settleMode;

    /** 出发网点 */
    @ApiModelProperty("出发网点")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long depDeptId;

    /** 到达网点 */
    @ApiModelProperty("到达网点")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long desDeptId;

    /** 返款 */
    @ApiModelProperty("返款")
    private BigDecimal refund;

    /** 现付 */
    @ApiModelProperty("现付")
    private BigDecimal cod;

    /** 到付 */
    @ApiModelProperty("到付")
    private BigDecimal pod;

    /** 欠付 */
    @ApiModelProperty("欠付")
    private BigDecimal poa;

    /** 会付 */
    @ApiModelProperty("会付")
    private BigDecimal pom;

    /** 月结 */
    @ApiModelProperty("月结")
    private BigDecimal ms;

    /** 应付运输费 */
    @ApiModelProperty("应付运输费")
    private BigDecimal apFrt;

    /** 应付其它费 */
    @ApiModelProperty("应付其它费")
    private BigDecimal apOther;

    /** 现付油卡 */
    @ApiModelProperty("现付油卡")
    private BigDecimal codGascard;

    /** 预计发车时间 */
    @ApiModelProperty("预计发车时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date estDepartTime;

    /** 预计到达时间 */
    @ApiModelProperty("预计到达时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date estArriveTime;

    /** 创建者 */
    @ApiModelProperty("创建者")
    @TableField(fill = FieldFill.INSERT)
    private String createBy;

    /** 创建时间 */
    @ApiModelProperty("创建时间")
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 更新者 */
    @ApiModelProperty("更新者")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updateBy;

    /** 更新时间 */
    @ApiModelProperty("更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /** 备注 */
    @ApiModelProperty("备注")
    private String remark;

}
